搜索功能作为产品设计中的基础且重要的功能,已经伴随着产品的发展历经了数十年。笔者向我们分析了整个搜索的流程,并做了一个简单的概述。
第一部分:搜索功能是什么?通过用户的输入,从海量的数据中能够找到与之匹配的信息的功能,称之为搜索。
搜索出生的原因是信息过载,只有大量的数据情况下,搜索才能发挥出应有的价值。假设整个世界只有10条新闻,你想知道标题中含有“中国”的新闻,扫一眼就知道结果了,搜索的功能反而鸡肋。
搜索功能是筛选+Ranking,根据用户的输入确定筛选条件,再根据一定的策略进行Ranking。随着信息的爆炸性以及用户人群的细分,随之诞生了搜索千人千面,结果列表的来源不仅仅跟你的输入相关,还会考虑用户画像,比如你最近的行为带来的一些标签。
为什么需要千人千面?因为搜索所得的数据量实在是太大了,如果不同人群看到的结果都是一样的,是极其没有效率的。想象一下,一个输入条件有10W 条结果,大多数人看到前三页就极其困难了。
这个时候,用户要么选择放弃搜索;要么选择更精准条件的搜索。第二种方法对用户不是很友好,原因在于用户如何确定真实的搜索意图,不知道该输入什么,无法表述等等。倘若机器可以根据用户的历史进行预测推荐,那么用户的体验会有极大的提升。
第二部分:搜索流程下图是搜索的流程图,虚线框中的主要是偏后台的工作,需要产品经理有适当的技术积累;剩余部分是会和产品、前端有交互的部分,需要产品经理进行产品设计。
接下来我们就一个个地讲:
第一节:功能确认第一步:需要确认是否需要该功能【做不做?】
请大家回头看下搜索之所以产生的原因——信息过载,在这里其实就已经隐含了哪些产品需要有搜索功能。划重点:信息。
因此,但凡涉及到有信息度的,数据量较大的,则可以有搜索功能。比如看视频,视频有发布者、视频名称、参演人等等;比如商品,有风格、有品牌、有类型等等;再比如新闻网站,信息量更直观些,也是可以有搜索功能的。
那么哪些产品不需要有呢?常见的是工具属性偏强,主操作信息量较少的产品,比如闹钟、拍照类的产品。
第二步:确认重要性【入口确定、资源确定等】
非常重要: 数据量过大,用户目的相对明确,有某一主题或者更具体的要求,搜索可以极大的提高用户体验,比如:搜索引擎、电商网站。
次级重要: 用户随意性较高,并无较强的目的性,比如:新闻资讯类网站,该部分实效性的要求远高于搜索。
第三步:确认目的【搜索形式、搜索算法】
分析用户使用搜索的目的是什么,对结果的定义是什么。
总结出这几点:决定,搜索的输入(类型)、形式以及输出(主准确?主召回?)。
在这里,再简单给大家介绍一下准确和召回的含义:
下图中的0,1分别代表否、是:Actual是实际情况中的数据,Predict是机器预测的数据。
准确率=在所有的数据中,机器预测正确的占比;换句话说,对所有数据来说,机器对了多少?
召回率=在所有准确的数据中,机器预测正确的占比;换句话说,对应该对的数据来说,机器找到了多少个对的?
第二节:输入输入的类型:文本、语音、图片、二维码等等,由于不同的输入内容,我们对信息的解析,以及后续检索排序都有不同的方法,